Even if an existing system is reorganized, main functions in the new system are not very different from those of the existing system. In this situation, subsystems of the existing system are reused to reduce both of the development costs and development term. In order to reuse subsystems, it is necessary to isolate subsystems required for reuse from the other resources in an enormous existing system. Currently, this isolation of subsystems is carried out using design documents at the time of development and/or the knowledge of development engineers, and highly depends on the know how at the time of design. But such a technique that depends on the human experience cannot definitely identify system resources to be reused, and it sometimes causes additional developments costs and time. There is a very real danger of cost increases during development due to design errors of the interface between the reused portions and the newly development portions in addition to the isolation difficulty.
Also, if there are deficiencies in the design documents and/or mismatches between the design documents and the current system, and/or the developer of the current system is absent, etc., it is not possible to smoothly investigate grouping of the subsystems in the existing system, reuse of the subsystems, new development, and/or application of packaged programs etc. Therefore, the system itself must be analyzed.
Further, now that almost all procedures are integrated into a system, the procedures themselves are incorporated into a black box and relationships between procedures become complicated which means that new development of all procedures is extremely difficult. In this respect a process for analyzing the existing system itself is absolutely essential in reorganization of the existing system.